<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- Copyright (C) 1988-2017 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being "Free Software" and "Free Software Needs
Free Documentation", with the Front-Cover Texts being "A GNU Manual,"
and with the Back-Cover Texts as in (a) below.

(a) The FSF's Back-Cover Text is: "You are free to copy and modify
this GNU Manual.  Buying copies from GNU Press supports the FSF in
developing GNU and promoting software freedom." -->
<!-- Created by GNU Texinfo 5.2, http://www.gnu.org/software/texinfo/ -->
<head>
<title>Debugging with GDB: Searching</title>

<meta name="description" content="Debugging with GDB: Searching">
<meta name="keywords" content="Debugging with GDB: Searching">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="Concept-Index.html#Concept-Index" rel="index" title="Concept Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Readline-Interaction.html#Readline-Interaction" rel="up" title="Readline Interaction">
<link href="Readline-Init-File.html#Readline-Init-File" rel="next" title="Readline Init File">
<link href="Readline-Arguments.html#Readline-Arguments" rel="prev" title="Readline Arguments">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
div.smalllisp {margin-left: 3.2em}
kbd {font-style:oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal}
ul.no-bullet {list-style: none}
-->
</style>


</head>

<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<a name="Searching"></a>
<div class="header">
<p>
Previous: <a href="Readline-Arguments.html#Readline-Arguments" accesskey="p" rel="prev">Readline Arguments</a>, Up: <a href="Readline-Interaction.html#Readline-Interaction" accesskey="u" rel="up">Readline Interaction</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="Searching-for-Commands-in-the-History"></a>
<h4 class="subsection">32.2.5 Searching for Commands in the History</h4>

<p>Readline provides commands for searching through the command history
for lines containing a specified string.
There are two search modes:  <em>incremental</em> and <em>non-incremental</em>.
</p>
<p>Incremental searches begin before the user has finished typing the
search string.
As each character of the search string is typed, Readline displays
the next entry from the history matching the string typed so far.
An incremental search requires only as many characters as needed to
find the desired history entry.
To search backward in the history for a particular string, type
<kbd>C-r</kbd>.  Typing <kbd>C-s</kbd> searches forward through the history.
The characters present in the value of the <code>isearch-terminators</code> variable
are used to terminate an incremental search.
If that variable has not been assigned a value, the <tt class="key">ESC</tt> and
<kbd>C-J</kbd> characters will terminate an incremental search.
<kbd>C-g</kbd> will abort an incremental search and restore the original line.
When the search is terminated, the history entry containing the
search string becomes the current line.
</p>
<p>To find other matching entries in the history list, type <kbd>C-r</kbd> or
<kbd>C-s</kbd> as appropriate.
This will search backward or forward in the history for the next
entry matching the search string typed so far.
Any other key sequence bound to a Readline command will terminate
the search and execute that command.
For instance, a <tt class="key">RET</tt> will terminate the search and accept
the line, thereby executing the command from the history list.
A movement command will terminate the search, make the last line found
the current line, and begin editing.
</p>
<p>Readline remembers the last incremental search string.  If two
<kbd>C-r</kbd>s are typed without any intervening characters defining a new
search string, any remembered search string is used.
</p>
<p>Non-incremental searches read the entire search string before starting
to search for matching history lines.  The search string may be
typed by the user or be part of the contents of the current line.
</p>
<hr>
<div class="header">
<p>
Previous: <a href="Readline-Arguments.html#Readline-Arguments" accesskey="p" rel="prev">Readline Arguments</a>, Up: <a href="Readline-Interaction.html#Readline-Interaction" accesskey="u" rel="up">Readline Interaction</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p>
</div>



</body>
</html>
